Micron Document
<!DOCTYPE html>
<html class="client-nojs vector-feature-night-mode-disabled vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-sticky-header-enabled" lang="en" dir="ltr"><head>
<meta charset="UTF-8">
<title>Text-based user interface</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="canonical" href="https://en.wikipedia.org/wiki/Text-based_user_interface"> <link href="./mw/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/user.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link rel="stylesheet" type="text/css" href="./mw/site.styles.css">
<link rel="stylesheet" type="text/css" href="./mw/noscript.css">
<link rel="stylesheet" type="text/css" href="./footer.css">
<link rel="stylesheet" type="text/css" href="./vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Text-based_user_interface rootpage-Text-based_user_interface skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading">
<span id="openzim-page-title" class="mw-page-title-main"><span class="mw-page-title-main">Text-based user interface</span></span>
</h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="en" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr">
<style data-mw-deduplicate="TemplateStyles:r1236090951">
/* start https://en.wikipedia.org/ */


.mw-parser-output .hatnote{font-style:italic}.mw-parser-output div.hatnote{padding-left:1.6em;margin-bottom:0.5em}.mw-parser-output .hatnote i{font-style:normal}.mw-parser-output .hatnote+link+.hatnote{margin-top:-0.5em}@media print{body.ns-0 .mw-parser-output .hatnote{display:none!important}}


/* end https://en.wikipedia.org/ */
</style><div role="note" class="hatnote navigation-not-searchable">Not to be confused with <a href="Command-line_interface" title="Command-line interface">Command-line interface</a>.</div>
<style data-mw-deduplicate="TemplateStyles:r1251242444">
/* start https://en.wikipedia.org/ */


.mw-parser-output .ambox{border:1px solid #a2a9b1;border-left:10px solid #36c;background-color:#fbfbfb;box-sizing:border-box}.mw-parser-output .ambox+link+.ambox,.mw-parser-output .ambox+link+style+.ambox,.mw-parser-output .ambox+link+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+style+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+link+.ambox{margin-top:-1px}html body.mediawiki .mw-parser-output .ambox.mbox-small-left{margin:4px 1em 4px 0;overflow:hidden;width:238px;border-collapse:collapse;font-size:88%;line-height:1.25em}.mw-parser-output .ambox-speedy{border-left:10px solid #b32424;background-color:#fee7e6}.mw-parser-output .ambox-delete{border-left:10px solid #b32424}.mw-parser-output .ambox-content{border-left:10px solid #f28500}.mw-parser-output .ambox-style{border-left:10px solid #fc3}.mw-parser-output .ambox-move{border-left:10px solid #9932cc}.mw-parser-output .ambox-protection{border-left:10px solid #a2a9b1}.mw-parser-output .ambox .mbox-text{border:none;padding:0.25em 0.5em;width:100%}.mw-parser-output .ambox .mbox-image{border:none;padding:2px 0 2px 0.5em;text-align:center}.mw-parser-output .ambox .mbox-imageright{border:none;padding:2px 0.5em 2px 0;text-align:center}.mw-parser-output .ambox .mbox-empty-cell{border:none;padding:0;width:1px}.mw-parser-output .ambox .mbox-image-div{width:52px}@media(min-width:720px){.mw-parser-output .ambox{margin:0 10%}}@media print{body.ns-0 .mw-parser-output .ambox{display:none!important}}


/* end https://en.wikipedia.org/ */
</style>


<p>In <a href="Computing" title="Computing">computing</a>, <b>text-based user interfaces</b> (<b>TUI</b>) (alternately <b>terminal user interfaces</b>, to reflect a dependence upon the properties of <a href="Computer_terminal" title="Computer terminal">computer terminals</a> and not just text), is a <a href="Retronym" title="Retronym">retronym</a> describing a type of <a href="User_interface" title="User interface">user interface</a> (UI) common as an early form of <a href="Human%E2%80%93computer_interaction" title="Human–computer interaction">human–computer interaction</a>, before the advent of bitmapped displays and modern conventional <a href="Graphical_user_interface" title="Graphical user interface">graphical user interfaces</a> (GUIs). Like modern GUIs, they can use the entire <a href="Electronic_visual_display" title="Electronic visual display">screen</a> area and may accept <a href="Computer_mouse" title="Computer mouse">mouse</a> and other inputs. They may also use color and often structure the display using <a href="Box-drawing_character" class="mw-redirect" title="Box-drawing character">box-drawing characters</a> such as ┌ and ╣. The modern context of use is usually a <a href="Terminal_emulator" title="Terminal emulator">terminal emulator</a>.
</p>
<meta property="mw:PageProp/toc">
<div class="mw-heading mw-heading2"><h2 id="Types_of_text_terminals">Types of text terminals</h2></div>
<p>From <a href="Console_application" title="Console application">text application</a>'s point of view, a text screen (and communications with it) can belong to one of three types (here ordered in order of decreasing accessibility):
</p>
<ol><li>A genuine <a href="Text_mode" title="Text mode">text mode</a> display, controlled by a <a href="Video_adapter" class="mw-redirect" title="Video adapter">video adapter</a> or the central processor itself. This is a normal condition for a locally running application on various types of <a href="Personal_computer" title="Personal computer">personal computers</a> and <a href="Mobile_device" title="Mobile device">mobile devices</a>. If not deterred by the <a href="Operating_system" title="Operating system">operating system</a>, a smart program may exploit the full power of a hardware text mode.</li>
<li>A text mode <a href="Emulator" title="Emulator">emulator</a>. Examples are <a href="Xterm" title="Xterm">xterm</a> for <a href="X_Window_System" title="X Window System">X&nbsp;Window System</a> and <a href="Win32_console" class="mw-redirect" title="Win32 console">win32 console</a> (in a window mode) for <a href="Microsoft_Windows" title="Microsoft Windows">Microsoft Windows</a>. This usually supports programs which expect a real text mode display, but may run considerably slower. Certain functions of an advanced text mode, such as an own <a href="Raster_font" class="mw-redirect" title="Raster font">font</a> uploading, almost certainly become unavailable.</li>
<li>A remote <a href="Text_terminal" class="mw-redirect" title="Text terminal">text terminal</a>. The communication capabilities usually become reduced to a <a href="Serial_line" class="mw-redirect" title="Serial line">serial line</a> or its emulation, possibly with few <a href="Ioctl" title="Ioctl">ioctl</a>()s as an <a href="Out-of-band_data" title="Out-of-band data">out-of-band</a> channel in such cases as <a href="Telnet" title="Telnet">Telnet</a> and <a href="Secure_Shell" title="Secure Shell">Secure Shell</a>. This is the worst case, because software restrictions hinder the use of capabilities of a remote display device.</li></ol>
<p>Under <a href="Linux_kernel" title="Linux kernel">Linux</a> and other <a href="Unix-like" title="Unix-like">Unix-like</a> systems, a program easily <a href="Graceful_degradation" class="mw-redirect" title="Graceful degradation">accommodates</a> to any of the three cases because the same interface (namely, <a href="Standard_streams" title="Standard streams">standard streams</a>) controls the display and keyboard. See <a href="#Windows">below</a> for comparison to Windows.
</p><p>Many <a href="#See_also">TUI programming libraries</a> are available to help developers build <a href="Console_application" title="Console application">TUI applications</a>.
</p>
<div class="mw-heading mw-heading2"><h2 id="On_ANSI-compatible_terminals">On ANSI-compatible terminals</h2></div>
<p><a href="American_National_Standards_Institute" title="American National Standards Institute">American National Standards Institute</a> (ANSI) standard <a href="ANSI_X3.64" class="mw-redirect" title="ANSI X3.64">ANSI X3.64</a> defines a standard set of <a href="Escape_sequence" title="Escape sequence">escape sequences</a> that can be used to drive terminals to create TUIs (see <a href="ANSI_escape_code" title="ANSI escape code">ANSI escape code</a>). Escape sequences may be supported for all three cases mentioned in the above section, allowing arbitrary <a href="Text_cursor" class="mw-redirect" title="Text cursor">cursor</a> movements and color changes.
However, not all terminals follow this standard, and many non-compatible but functionally equivalent sequences exist.
</p>
<div style="clear:both;" class=""></div>
<div class="mw-heading mw-heading2"><h2 id="Under_DOS_and_Microsoft_Windows">Under DOS and Microsoft Windows</h2></div>

<p>On <a href="IBM_Personal_Computer" title="IBM Personal Computer">IBM Personal Computers</a> and <a href="IBM_PC_compatible" title="IBM PC compatible">compatibles</a>, the Basic Input Output System (<a href="BIOS" title="BIOS">BIOS</a>) and <a href="DOS" title="DOS">DOS</a> system calls provide a way to write text on the screen, and the <a href="ANSI.SYS" title="ANSI.SYS">ANSI.SYS</a> driver could process standard ANSI escape sequences. However, programmers soon learned that writing data directly to the <a href="Screen_buffer" class="mw-redirect" title="Screen buffer">screen buffer</a> was far faster and simpler to program, and less error-prone; see <a href="VGA-compatible_text_mode" class="mw-redirect" title="VGA-compatible text mode">VGA-compatible text mode</a> for details. This change in programming methods resulted in many DOS TUI programs. The <a href="Windows_console" class="mw-redirect" title="Windows console">Windows console</a> environment is notorious for its emulation of certain EGA/VGA text mode features, particularly random access to the text buffer, even if the application runs in a window. On the other hand, programs running under Windows (both native and DOS applications) have much less control of the display and keyboard than Linux and DOS programs can have, because of aforementioned Windows console layer.
</p>

<p>Most often those programs used a blue background for the main screen, with white or yellow characters, although commonly they had also user color customization. They often used <a href="Box-drawing_character" class="mw-redirect" title="Box-drawing character">box-drawing characters</a> in IBM's <a href="Code_page_437" title="Code page 437">code page 437</a>. Later, the interface became deeply influenced by <a href="Graphical_user_interface" title="Graphical user interface">graphical user interfaces</a> (GUI), adding <a href="Pull-down_menu" class="mw-redirect" title="Pull-down menu">pull-down menus</a>, overlapping <a href="Window_(computing)" title="Window (computing)">windows</a>, <a href="Dialog_box" title="Dialog box">dialog boxes</a> and <a href="GUI_widget" class="mw-redirect" title="GUI widget">GUI widgets</a> operated by <a href="Mnemonics_(keyboard)" title="Mnemonics (keyboard)">mnemonics</a> or <a href="Keyboard_shortcut" title="Keyboard shortcut">keyboard shortcuts</a>. Soon <a href="Computer_mouse" title="Computer mouse">mouse</a> input was added&nbsp;– either at text resolution as a simple colored box or at graphical resolution thanks to the ability of the <a href="Enhanced_Graphics_Adapter" title="Enhanced Graphics Adapter">Enhanced Graphics Adapter</a> (EGA) and <a href="Video_Graphics_Array" title="Video Graphics Array">Video Graphics Array</a> (VGA) display adapters to <a href="VGA-compatible_text_mode" class="mw-redirect" title="VGA-compatible text mode">redefine the text character shapes by software</a>&nbsp;– providing additional functions.
</p><p>Some notable programs of this kind were <a href="Microsoft_Word" title="Microsoft Word">Microsoft Word</a>, <a href="DOS_Shell" title="DOS Shell">DOS Shell</a>, <a href="WordPerfect" title="WordPerfect">WordPerfect</a>, <a href="Norton_Commander" title="Norton Commander">Norton Commander</a>, <a href="Turbo_Vision" title="Turbo Vision">Turbo Vision</a> based <a href="Borland" title="Borland">Borland</a> <a href="Turbo_Pascal" title="Turbo Pascal">Turbo Pascal</a> and <a href="Borland_Turbo_C" class="mw-redirect" title="Borland Turbo C">Turbo C</a> (the latter included the <a href="Conio.h" title="Conio.h">conio</a> <a href="Library_(computer_science)" class="mw-redirect" title="Library (computer science)">library</a>), <a href="Lotus_1-2-3" title="Lotus 1-2-3">Lotus 1-2-3</a> and many others. Some of these interfaces survived even during the <a href="Microsoft" title="Microsoft">Microsoft</a> <a href="Windows_3.1x" class="mw-redirect" title="Windows 3.1x">Windows 3.1x</a> period in the early 1990s. For example, the <a href="Microsoft_C" class="mw-redirect" title="Microsoft C">Microsoft C</a> 6.0 compiler, used to write true GUI programs under <a href="16-bit" class="mw-redirect" title="16-bit">16-bit</a> Windows, still has its own TUI.
</p><p>Since its start, <a href="Microsoft_Windows" title="Microsoft Windows">Microsoft Windows</a> includes a console to display DOS software. Later versions added the <a href="Windows_console" class="mw-redirect" title="Windows console">Windows console</a> as a native interface for <a href="Command-line_interface" title="Command-line interface">command-line interface</a> and TUI programs. The console usually opens in window mode, but it can be switched to full, true text mode screen and vice versa by pressing the <a href="Alt_key" title="Alt key">Alt</a> and <a href="Enter_key" title="Enter key">Enter</a> keys together. Full-screen mode is not available in Windows Vista and later, but may be used with some workarounds.<sup id="cite_ref-1" class="reference"><a href="#cite_note-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup>
</p>
<div style="clear:both;" class=""></div>
<p><a href="Windows_Terminal" title="Windows Terminal">Windows Terminal</a> is a <a href="Tabbed" class="mw-redirect" title="Tabbed">multi-tabbed</a> <a href="Terminal_emulator" title="Terminal emulator">terminal emulator</a> that <a href="Microsoft" title="Microsoft">Microsoft</a> has developed for <a href="Windows_10" title="Windows 10">Windows 10</a> and later<sup id="cite_ref-2" class="reference"><a href="#cite_note-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup> as a replacement for <a href="Windows_Console" title="Windows Console">Windows Console</a>.
</p><p>The <a href="Windows_Subsystem_for_Linux" title="Windows Subsystem for Linux">Windows Subsystem for Linux</a> which was added to Windows by <a href="Microsoft" title="Microsoft">Microsoft</a> in 2019, supports running <a href="Linux" title="Linux">Linux</a> text-based apps on Windows, within <a href="Windows_console" class="mw-redirect" title="Windows console">Windows console</a>, <a href="Windows_Terminal" title="Windows Terminal">Windows Terminal</a>, and other Windows-based terminals.
</p>
<div class="mw-heading mw-heading2"><h2 id="Under_Unix-like_systems">Under Unix-like systems</h2></div>


<p>In <a href="Unix-like" title="Unix-like">Unix-like</a> operating systems, TUIs are often constructed using the terminal control <a href="Library_(computer_science)" class="mw-redirect" title="Library (computer science)">library</a> <i><a href="Curses_(programming_library)" title="Curses (programming library)">curses</a></i>, or <i><a href="Ncurses" title="Ncurses">ncurses</a></i> (a mostly compatible library), or the alternative <i><a href="S-Lang" title="S-Lang">S-Lang</a></i> library. The advent of the <i>curses</i> library with <a href="Berkeley_Software_Distribution" title="Berkeley Software Distribution">Berkeley Unix</a> created a portable and stable API for which to write TUIs. The ability to talk to various <a href="Text_terminal" class="mw-redirect" title="Text terminal">text terminal</a> types using the same <a href="API" title="API">interfaces</a> led to more widespread use of "visual" Unix programs, which occupied the entire terminal screen instead of using a simple line interface. This can be seen in <a href="Text_editor" title="Text editor">text editors</a> such as <a href="Vi_(text_editor)" title="Vi (text editor)">vi</a>, <a href="Email_client" title="Email client">mail clients</a> such as <a href="Pine_(email_client)" title="Pine (email client)">pine</a> or <a href="Mutt_(email_client)" title="Mutt (email client)">mutt</a>, system management tools such as <a href="System_Management_Interface_Tool" title="System Management Interface Tool">SMIT</a>, SAM, <a href="FreeBSD" title="FreeBSD">FreeBSD</a>'s <a href="Sysinstall" class="mw-redirect" title="Sysinstall">Sysinstall</a> and <a href="Web_browser" title="Web browser">web browsers</a> such as <a href="Lynx_(web_browser)" title="Lynx (web browser)">lynx</a>. Some applications, such as <a href="W3m" title="W3m">w3m</a>, and older versions of pine and <a href="Vi_(text_editor)" title="Vi (text editor)">vi</a> use the less-able <a href="Termcap" title="Termcap">termcap</a> library, performing many of the functions associated with <a href="Curses_(programming_library)" title="Curses (programming library)">curses</a> within the application. Custom TUI applications based on <i>widgets</i> can be easily developed using the <a href="Dialog_(software)" title="Dialog (software)">dialog</a> program (based on <a href="Ncurses" title="Ncurses">ncurses</a>), or the <a href="Newt_(programming_library)" title="Newt (programming library)">Whiptail</a> program (based on <a href="S-Lang" title="S-Lang">S-Lang</a>).
</p><p>In addition, the rise in popularity of <a href="Linux" title="Linux">Linux</a> brought many former DOS users to a Unix-like platform, which has fostered a DOS influence in many TUIs. The program <a href="Minicom" title="Minicom">minicom</a>, for example, is modeled after the popular DOS program <a href="Telix" title="Telix">Telix</a>. Some other TUI programs, such as the <a href="Twin_(windowing_system)" title="Twin (windowing system)">Twin</a> desktop, were <a href="Ported" class="mw-redirect" title="Ported">ported</a> over.
</p><p>Most Unix-like operating systems (Linux, FreeBSD, etc.) support <a href="Virtual_console" title="Virtual console">virtual consoles</a>, typically accessed through a Ctrl-Alt-F key combination. For example, under Linux up to 64 consoles may be accessed (12 via function keys), each displaying in full-screen text mode.
</p><p>The <a href="Free_software" title="Free software">free software</a> program <a href="GNU_Screen" title="GNU Screen">GNU Screen</a> provides for managing multiple sessions inside a single TUI, and so can be thought of as being like a <a href="Window_manager" title="Window manager">window manager</a> for text-mode and command-line interfaces. <a href="Tmux" title="Tmux">Tmux</a> can also do this.
</p><p>The proprietary <a href="MacOS" title="MacOS">macOS</a> <a href="Text_editor" title="Text editor">text editor</a> <a href="BBEdit" title="BBEdit">BBEdit</a> includes a <i>shell worksheet</i> function that works as a full-screen shell window. The <a href="Free_software" title="Free software">free</a> <a href="Emacs" title="Emacs">Emacs</a> text editor can run a shell inside of one of its buffers to provide similar functionality. There are several shell implementations in Emacs, but only <code>ansi-term</code> is suitable for running TUI programs. The other common shell modes, <code>shell</code> and <code>eshell</code> only emulate command lines and TUI programs will complain "Terminal is not fully functional" or display a garbled interface. The <a href="Free_software" title="Free software">free</a> <a href="Vim_(text_editor)" title="Vim (text editor)">Vim</a> and <a href="Neovim" class="mw-redirect" title="Neovim">Neovim</a> text editors have terminal windows (simulating <a href="Xterm" title="Xterm">xterm</a>). The feature is intended for running jobs, parallel builds, or tests, but can also be used (with window splits and tab pages) as a lightweight terminal multiplexer.
</p>
<div class="mw-heading mw-heading2"><h2 id="OpenVMS">OpenVMS</h2></div>
<p>VAX/VMS (later known as <a href="OpenVMS" title="OpenVMS">OpenVMS</a>) had a similar facility to <i>curses</i> known as the Screen Management facility or SMG. This could be invoked from the command line or called from programs using the SMG$ library.<sup id="cite_ref-3" class="reference"><a href="#cite_note-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading2"><h2 id="Oberon">Oberon</h2></div>

<p>Another kind of TUI is the primary interface of the <a href="Oberon_(operating_system)" title="Oberon (operating system)">Oberon operating system</a>, first released in 1988 and still maintained. Unlike most other text-based user interfaces, Oberon does not use a text-mode console or terminal, but requires a large bit-mapped display, on which text is the primary target for mouse clicks. Analogous to a <a href="Hyperlink" title="Hyperlink">link</a> in <a href="Hypertext" title="Hypertext">hypertext</a>, a command has the format <code>Module.Procedure <i>parameters</i>&nbsp;~</code> and is activated with a mouse middle-click. Text displayed anywhere on the screen can be edited, and if formatted with the required command syntax, can be middle-clicked and executed. Any text file containing suitably-formatted commands can be used as a so-called <b>tool text</b>, thus serving as a user-configurable menu. Even the output of a previous command can be edited and used as a new command. This approach is radically different from both conventional dialogue-oriented console menus or <a href="Command-line_interface" title="Command-line interface">command-line interfaces</a> but bears some similarities to the worksheet interface of the <a href="Macintosh_Programmer's_Workshop#look_and_feel" title="Macintosh Programmer's Workshop">Macintosh Programmer's Workshop</a>.
</p><p>Since it does not use graphical <a href="Graphical_widget" title="Graphical widget">widgets</a>, only plain text, but offers comparable functionality to a <a href="GUI" class="mw-redirect" title="GUI">GUI</a> with a <a href="Tiling_window_manager" title="Tiling window manager">tiling window manager</a>, it is referred to as a Text User Interface or TUI. For a short introduction, see the 2nd paragraph on page four of the first published <i>Report on the Oberon System</i>.<sup id="cite_ref-4" class="reference"><a href="#cite_note-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup>
</p><p>Oberon's <a href="User_Interface" class="mw-redirect" title="User Interface">UI</a> influenced the design of the <a href="Acme_(text_editor)" title="Acme (text editor)">Acme text editor and email client</a> for the <a href="Plan_9_from_Bell_Labs" title="Plan 9 from Bell Labs">Plan 9 from Bell Labs</a> operating system.
</p>
<div class="mw-heading mw-heading2"><h2 id="In_embedded_systems">In embedded systems</h2></div>

<p>Modern <a href="Embedded_system" title="Embedded system">embedded systems</a> are capable of displaying TUI on a monitor like personal computers. This functionality is usually implemented using specialized integrated circuits, modules, or using <a href="FPGA" class="mw-redirect" title="FPGA">FPGA</a>.
</p><p>Video circuits or modules are usually controlled using <a href="VT100" title="VT100">VT100</a>-compatible command set over <a href="UART" class="mw-redirect" title="UART">UART</a>, FPGA designs usually allow direct video memory access.
</p>
<div class="mw-heading mw-heading2"><h2 id="Other_uses">Other uses</h2></div>
<ul><li>The <a href="Full_screen_editor" class="mw-redirect" title="Full screen editor">full screen editor</a> of the <a href="Commodore_64" title="Commodore 64">Commodore 64</a> 8-bit computers was advanced in its market segment for its time. Users could move the cursor over the entire screen area, entering and editing <a href="BASIC" title="BASIC">BASIC</a> program lines, as well as <a href="Direct_mode" title="Direct mode">direct mode</a> commands. All Commodore <a href="8-bit" class="mw-redirect" title="8-bit">8-bit</a> computers used the <a href="PETSCII" title="PETSCII">PETSCII</a> character set, which included character glyphs suitable for making a TUI.</li>
<li>Apple's <a href="Macintosh_Programmer's_Workshop" title="Macintosh Programmer's Workshop">Macintosh Programmer's Workshop</a> programming environment included Commando, a TUI shell. It was the inspiration for BBEdit's shell worksheet.</li>
<li>Later <a href="Apple_II" title="Apple II">Apple II</a> models included <a href="MouseText" title="MouseText">MouseText</a>, a set of graphical glyphs used for making a TUI.</li>
<li>The <a href="Corvus_Concept" class="mw-redirect" title="Corvus Concept">Corvus Concept</a> computer of 1982 used a <a href="Function_key" title="Function key">function key</a>-based text interface on a full-page pivoting display.</li></ul>
<div class="mw-heading mw-heading2"><h2 id="See_also">See also</h2></div>
<ul><li><a href="Command-line_interface" title="Command-line interface">Command-line interface</a> (CLI)</li>
<li><a href="Console_application" title="Console application">Console application</a></li>
<li><a href="Natural-language_user_interface" title="Natural-language user interface">Natural-language user interface</a></li>
<li><a href="Text-based_game" title="Text-based game">Text-based game</a>, a game using a TUI</li>
<li><a href="VGA_text_mode" title="VGA text mode">VGA text mode</a></li>
<li><a href="IBM_Monochrome_Display_Adapter" title="IBM Monochrome Display Adapter">MDA</a></li></ul>
<div class="mw-heading mw-heading3"><h3 id="Examples_of_programming_libraries">Examples of programming libraries</h3></div>
<ul><li><a href="Curses_(programming_library)" title="Curses (programming library)">curses (programming library)</a></li>
<li><a href="Ncurses" title="Ncurses">ncurses</a></li>
<li><a href="CDK_(programming_library)" title="CDK (programming library)">CDK</a></li>
<li><a href="Newt_(programming_library)" title="Newt (programming library)">Newt</a>, a widget-based toolkit</li>
<li><a href="S-Lang" title="S-Lang">S-Lang</a></li>
<li><a href="Turbo_Vision" title="Turbo Vision">Turbo Vision</a></li>
<li><a href="Visual_Basic_(classic)" title="Visual Basic (classic)">Early versions of Visual Basic</a></li></ul>
<div class="mw-heading mw-heading2"><h2 id="References">References</h2></div>
<style data-mw-deduplicate="TemplateStyles:r1239543626">
/* start https://en.wikipedia.org/ */


.mw-parser-output .reflist{margin-bottom:0.5em;list-style-type:decimal}@media screen{.mw-parser-output .reflist{font-size:90%}}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}


/* end https://en.wikipedia.org/ */
</style><div class="reflist">
<div class="mw-references-wrap"><ol class="references">
<li id="cite_note-1"><span class="mw-cite-backlink"><b><a href="#cite_ref-1">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://social.technet.microsoft.com/Forums/en/w7itprohardware/thread/3cc6994e-cbc2-4844-b040-a3c8385c69a5">cmd prompt full screen in Windows 7</a>. Social.technet.microsoft.com. Retrieved on 2013-06-15.</span>
</li>
<li id="cite_note-2"><span class="mw-cite-backlink"><b><a href="#cite_ref-2">^</a></b></span> <span class="reference-text"><style data-mw-deduplicate="TemplateStyles:r1238218222">
/* start https://en.wikipedia.org/ */


.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free.id-lock-free a{background:url("./mw/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited.id-lock-limited a,.mw-parser-output .id-lock-registration.id-lock-registration a{background:url("./mw/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription.id-lock-subscription a{background:url("./mw/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("./mw/Wikisource-logo.svg")right 0.1em center/12px no-repeat}body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-free a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-limited a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-registration a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-subscription a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .cs1-ws-icon a{background-size:contain;padding:0 1em 0 0}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:var(--color-error,#d33)}.mw-parser-output .cs1-visible-error{color:var(--color-error,#d33)}.mw-parser-output .cs1-maint{display:none;color:#085;margin-left:0.3em}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}@media screen{.mw-parser-output .cs1-format{font-size:95%}html.skin-theme-clientpref-night .mw-parser-output .cs1-maint{color:#18911f}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .cs1-maint{color:#18911f}}


/* end https://en.wikipedia.org/ */
</style><cite id="CITEREFWarren2019" class="citation web cs1">Warren, Tom (May 6, 2019). <a rel="nofollow" class="external text" href="https://www.theverge.com/2019/5/6/18527870/microsoft-windows-terminal-command-line-tool">"Microsoft unveils Windows Terminal, a new command line app for Windows"</a>. <i>The Verge</i>.</cite></span>
</li>
<li id="cite_note-3"><span class="mw-cite-backlink"><b><a href="#cite_ref-3">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://h30266.www3.hpe.com/odl/vax/opsys/vmsos73/vmsos73/5935/5935pro_contents.html">"OpenVMS RTL Screen Management (SMG$) Manual"</a>. <i>hpe.com</i>. 2001<span class="reference-accessdate">. Retrieved <span class="nowrap">2021-01-01</span></span>.</cite></span>
</li>
<li id="cite_note-4"><span class="mw-cite-backlink"><b><a href="#cite_ref-4">^</a></b></span> <span class="reference-text"><cite id="CITEREFWirthGutknecht1988" class="citation techreport cs1"><a href="Niklaus_Wirth" title="Niklaus Wirth">Wirth, Niklaus</a>; Gutknecht, Jürg (1988). <a rel="nofollow" class="external text" href="http://e-collection.library.ethz.ch/eserv/eth:3180/eth-3180-01.pdf"><i>The Oberon System</i></a> <span class="cs1-format">(PDF)</span> (Technical report). ETH Eidgenössische Technische Hochschule Zürich, Institut für Informatik. Vol.&nbsp;88. <a href="Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<a rel="nofollow" class="external text" href="https://doi.org/10.3929%2Fethz-a-000487176">10.3929/ethz-a-000487176</a>.</cite></span>
</li>
</ol></div></div>
<div class="navbox-styles"><style data-mw-deduplicate="TemplateStyles:r1129693374">
/* start https://en.wikipedia.org/ */


.mw-parser-output .hlist dl,.mw-parser-output .hlist ol,.mw-parser-output .hlist ul{margin:0;padding:0}.mw-parser-output .hlist dd,.mw-parser-output .hlist dt,.mw-parser-output .hlist li{margin:0;display:inline}.mw-parser-output .hlist.inline,.mw-parser-output .hlist.inline dl,.mw-parser-output .hlist.inline ol,.mw-parser-output .hlist.inline ul,.mw-parser-output .hlist dl dl,.mw-parser-output .hlist dl ol,.mw-parser-output .hlist dl ul,.mw-parser-output .hlist ol dl,.mw-parser-output .hlist ol ol,.mw-parser-output .hlist ol ul,.mw-parser-output .hlist ul dl,.mw-parser-output .hlist ul ol,.mw-parser-output .hlist ul ul{display:inline}.mw-parser-output .hlist .mw-empty-li{display:none}.mw-parser-output .hlist dt::after{content:": "}.mw-parser-output .hlist dd::after,.mw-parser-output .hlist li::after{content:" · ";font-weight:bold}.mw-parser-output .hlist dd:last-child::after,.mw-parser-output .hlist dt:last-child::after,.mw-parser-output .hlist li:last-child::after{content:none}.mw-parser-output .hlist dd dd:first-child::before,.mw-parser-output .hlist dd dt:first-child::before,.mw-parser-output .hlist dd li:first-child::before,.mw-parser-output .hlist dt dd:first-child::before,.mw-parser-output .hlist dt dt:first-child::before,.mw-parser-output .hlist dt li:first-child::before,.mw-parser-output .hlist li dd:first-child::before,.mw-parser-output .hlist li dt:first-child::before,.mw-parser-output .hlist li li:first-child::before{content:" (";font-weight:normal}.mw-parser-output .hlist dd dd:last-child::after,.mw-parser-output .hlist dd dt:last-child::after,.mw-parser-output .hlist dd li:last-child::after,.mw-parser-output .hlist dt dd:last-child::after,.mw-parser-output .hlist dt dt:last-child::after,.mw-parser-output .hlist dt li:last-child::after,.mw-parser-output .hlist li dd:last-child::after,.mw-parser-output .hlist li dt:last-child::after,.mw-parser-output .hlist li li:last-child::after{content:")";font-weight:normal}.mw-parser-output .hlist ol{counter-reset:listitem}.mw-parser-output .hlist ol>li{counter-increment:listitem}.mw-parser-output .hlist ol>li::before{content:" "counter(listitem)"\a0 "}.mw-parser-output .hlist dd ol>li:first-child::before,.mw-parser-output .hlist dt ol>li:first-child::before,.mw-parser-output .hlist li ol>li:first-child::before{content:" ("counter(listitem)"\a0 "}


/* end https://en.wikipedia.org/ */
</style><style data-mw-deduplicate="TemplateStyles:r1236075235">
/* start https://en.wikipedia.org/ */


.mw-parser-output .navbox{box-sizing:border-box;border:1px solid #a2a9b1;width:100%;clear:both;font-size:88%;text-align:center;padding:1px;margin:1em auto 0}.mw-parser-output .navbox .navbox{margin-top:0}.mw-parser-output .navbox+.navbox,.mw-parser-output .navbox+.navbox-styles+.navbox{margin-top:-1px}.mw-parser-output .navbox-inner,.mw-parser-output .navbox-subgroup{width:100%}.mw-parser-output .navbox-group,.mw-parser-output .navbox-title,.mw-parser-output .navbox-abovebelow{padding:0.25em 1em;line-height:1.5em;text-align:center}.mw-parser-output .navbox-group{white-space:nowrap;text-align:right}.mw-parser-output .navbox,.mw-parser-output .navbox-subgroup{background-color:#fdfdfd}.mw-parser-output .navbox-list{line-height:1.5em;border-color:#fdfdfd}.mw-parser-output .navbox-list-with-group{text-align:left;border-left-width:2px;border-left-style:solid}.mw-parser-output tr+tr>.navbox-abovebelow,.mw-parser-output tr+tr>.navbox-group,.mw-parser-output tr+tr>.navbox-image,.mw-parser-output tr+tr>.navbox-list{border-top:2px solid #fdfdfd}.mw-parser-output .navbox-title{background-color:#ccf}.mw-parser-output .navbox-abovebelow,.mw-parser-output .navbox-group,.mw-parser-output .navbox-subgroup .navbox-title{background-color:#ddf}.mw-parser-output .navbox-subgroup .navbox-group,.mw-parser-output .navbox-subgroup .navbox-abovebelow{background-color:#e6e6ff}.mw-parser-output .navbox-even{background-color:#f7f7f7}.mw-parser-output .navbox-odd{background-color:transparent}.mw-parser-output .navbox .hlist td dl,.mw-parser-output .navbox .hlist td ol,.mw-parser-output .navbox .hlist td ul,.mw-parser-output .navbox td.hlist dl,.mw-parser-output .navbox td.hlist ol,.mw-parser-output .navbox td.hlist ul{padding:0.125em 0}.mw-parser-output .navbox .navbar{display:block;font-size:100%}.mw-parser-output .navbox-title .navbar{float:left;text-align:left;margin-right:0.5em}body.skin--responsive .mw-parser-output .navbox-image img{max-width:none!important}@media print{body.ns-0 .mw-parser-output .navbox{display:none!important}}


/* end https://en.wikipedia.org/ */
</style></div><div role="navigation" class="navbox" aria-labelledby="User_interfaces152" style="padding:3px"><table class="nowraplinks mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><style data-mw-deduplicate="TemplateStyles:r1239400231">
/* start https://en.wikipedia.org/ */


.mw-parser-output .navbar{display:inline;font-size:88%;font-weight:normal}.mw-parser-output .navbar-collapse{float:left;text-align:left}.mw-parser-output .navbar-boxtext{word-spacing:0}.mw-parser-output .navbar ul{display:inline-block;white-space:nowrap;line-height:inherit}.mw-parser-output .navbar-brackets::before{margin-right:-0.125em;content:"[ "}.mw-parser-output .navbar-brackets::after{margin-left:-0.125em;content:" ]"}.mw-parser-output .navbar li{word-spacing:-0.125em}.mw-parser-output .navbar a>span,.mw-parser-output .navbar a>abbr{text-decoration:inherit}.mw-parser-output .navbar-mini abbr{font-variant:small-caps;border-bottom:none;text-decoration:none;cursor:inherit}.mw-parser-output .navbar-ct-full{font-size:114%;margin:0 7em}.mw-parser-output .navbar-ct-mini{font-size:114%;margin:0 4em}html.skin-theme-clientpref-night .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}@media(prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}}@media print{.mw-parser-output .navbar{display:none!important}}


/* end https://en.wikipedia.org/ */
</style><div id="User_interfaces152" style="font-size:114%;margin:0 4em"><a href="User_interface" title="User interface">User interfaces</a></div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Natural-language_user_interface" title="Natural-language user interface">Natural-language user interfaces</a></th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Chatbot" title="Chatbot">Chatbot</a></li>
<li><a href="Dialogue_system" title="Dialogue system">Dialogue system</a></li>
<li><a href="Voice_user_interface" title="Voice user interface">Voice user interfaces</a></li>
<li><a href="Conversational_user_interface" title="Conversational user interface">Conversational user interface</a></li>
<li><a href="Virtual_assistant" title="Virtual assistant">Virtual assistant</a></li>
<li><a href="Voice_search" title="Voice search">Voice search</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Graphical_user_interface" title="Graphical user interface">Graphical user interfaces</a></th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Graphical_widget" title="Graphical widget">Widgets</a></li>
<li><a href="Zooming_user_interface" title="Zooming user interface">Zooming user interface</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Touch_user_interface" title="Touch user interface">Touch user interfaces</a></th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Multi-touch" title="Multi-touch">Multi-touch</a></li>
<li><a href="Tangible_user_interface" title="Tangible user interface">Tangible user interface</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="3D_user_interface" class="mw-redirect" title="3D user interface">3D user interfaces</a></th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Augmented_reality" title="Augmented reality">Augmented</a> and <a href="Virtual_reality" title="Virtual reality">virtual reality</a></li>
<li><a href="Finger_tracking" title="Finger tracking">Finger tracking</a></li>
<li><a href="Positional_tracking" class="mw-redirect" title="Positional tracking">Positional tracking</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Other user interfaces</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul>
<li><a href="Natural_user_interface" title="Natural user interface">Natural user interface</a></li>
<li><a href="Multimodal_interaction" title="Multimodal interaction">Multimodal user interface</a></li></ul>
</div></td></tr></tbody></table></div>
<div class="navbox-styles"></div><div role="navigation" class="navbox" aria-labelledby="Operating_systems310" style="padding:3px"><table class="nowraplinks mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><div id="Operating_systems310" style="font-size:114%;margin:0 4em"><a href="Operating_system" title="Operating system">Operating systems</a></div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%">General</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Comparison_of_operating_systems" title="Comparison of operating systems">Comparison</a></li>
<li><a href="Forensic_software_engineering" title="Forensic software engineering">Forensic engineering</a></li>
<li><a href="History_of_operating_systems" title="History of operating systems">History</a></li>
<li><a href="List_of_operating_systems" title="List of operating systems">List</a></li>
<li><a href="Timeline_of_operating_systems" title="Timeline of operating systems">Timeline</a></li>
<li><a href="Usage_share_of_operating_systems" title="Usage share of operating systems">Usage share</a></li>
<li><a href="Comparison_of_user_features_of_operating_systems" title="Comparison of user features of operating systems">User features comparison</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Variants</th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Disk_operating_system" title="Disk operating system">Disk operating system</a></li>
<li><a href="Distributed_operating_system" title="Distributed operating system">Distributed operating system</a></li>
<li><a href="Embedded_operating_system" title="Embedded operating system">Embedded operating system</a></li>
<li><a href="Hobbyist_operating_system" title="Hobbyist operating system">Hobbyist operating system</a></li>
<li><a href="Just_enough_operating_system" title="Just enough operating system">Just enough operating system</a></li>
<li><a href="Mobile_operating_system" title="Mobile operating system">Mobile operating system</a></li>
<li><a href="Network_operating_system" title="Network operating system">Network operating system</a></li>
<li><a href="Object-oriented_operating_system" title="Object-oriented operating system">Object-oriented operating system</a></li>
<li><a href="Real-time_operating_system" title="Real-time operating system">Real-time operating system</a></li>
<li><a href="Supercomputer_operating_system" title="Supercomputer operating system">Supercomputer operating system</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Kernel_(operating_system)" title="Kernel (operating system)">Kernel</a></th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:6em"><a href="Computer_architecture" title="Computer architecture">Architectures</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Exokernel" title="Exokernel">Exokernel</a></li>
<li><a href="Hybrid_kernel" title="Hybrid kernel">Hybrid</a></li>
<li><a href="Microkernel" title="Microkernel">Microkernel</a></li>
<li><a href="Monolithic_kernel" title="Monolithic kernel">Monolithic</a></li>
<li><a href="Multikernel" title="Multikernel">Multikernel</a></li>
<li><a href="Vkernel" title="Vkernel">vkernel</a></li>
<li><a href="Rump_kernel" title="Rump kernel">Rump kernel</a></li>
<li><a href="Unikernel" title="Unikernel">Unikernel</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:6em">Components</th><td class="navbox-list-with-group navbox-list navbox-even" style="padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Device_driver" title="Device driver">Device driver</a></li>
<li><a href="Loadable_kernel_module" title="Loadable kernel module">Loadable kernel module</a></li>
<li><a href="User_space_and_kernel_space" title="User space and kernel space">User space and kernel space</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Process_management_(computing)" title="Process management (computing)">Process management</a></th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:6em">Concepts</th><td class="navbox-list-with-group navbox-list navbox-odd" style="padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Computer_multitasking" title="Computer multitasking">Computer multitasking</a> (<a href="Cooperative_multitasking" title="Cooperative multitasking">Cooperative</a>, <a href="Preemption_(computing)" title="Preemption (computing)">Preemptive</a>)</li>
<li><a href="Context_switch" title="Context switch">Context switch</a></li>
<li><a href="Interrupt" title="Interrupt">Interrupt</a></li>
<li><a href="Inter-process_communication" title="Inter-process communication">IPC</a></li>
<li><a href="Process_(computing)" title="Process (computing)">Process</a></li>
<li><a href="Process_control_block" title="Process control block">Process control block</a></li>
<li><a href="Real-time_operating_system" title="Real-time operating system">Real-time</a></li>
<li><a href="Thread_(computing)" title="Thread (computing)">Thread</a></li>
<li><a href="Time-sharing" title="Time-sharing">Time-sharing</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:6em"><a href="Scheduling_(computing)" title="Scheduling (computing)">Scheduling<br>algorithms</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Fixed-priority_pre-emptive_scheduling" title="Fixed-priority pre-emptive scheduling">Fixed-priority preemptive</a></li>
<li><a href="Multilevel_feedback_queue" title="Multilevel feedback queue">Multilevel feedback queue</a></li>
<li><a href="Round-robin_scheduling" title="Round-robin scheduling">Round-robin</a></li>
<li><a href="Shortest_job_next" title="Shortest job next">Shortest job next</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Memory_management_(operating_systems)" title="Memory management (operating systems)">Memory management</a>,<br><a href="System_resource" title="System resource">resource</a> protection</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Bus_error" title="Bus error">Bus error</a></li>
<li><a href="General_protection_fault" title="General protection fault">General protection fault</a></li>
<li><a href="Memory_paging" title="Memory paging">Memory paging</a></li>
<li><a href="Memory_protection" title="Memory protection">Memory protection</a></li>
<li><a href="Protection_ring" title="Protection ring">Protection ring</a></li>
<li><a href="Segmentation_fault" title="Segmentation fault">Segmentation fault</a></li>
<li><a href="Virtual_memory" title="Virtual memory">Virtual memory</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Non-volatile_memory" title="Non-volatile memory">Storage</a> access,<br><a href="File_system" title="File system">file systems</a></th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Booting#BOOT-LOADER" title="Booting">Boot loader</a></li>
<li><a href="Defragmentation" title="Defragmentation">Defragmentation</a></li>
<li><a href="Device_file" title="Device file">Device file</a></li>
<li><a href="File_attribute" title="File attribute">File attribute</a></li>
<li><a href="Inode" title="Inode">Inode</a></li>
<li><a href="Journaling_file_system" title="Journaling file system">Journal</a></li>
<li><a href="Disk_partitioning" title="Disk partitioning">Partition</a></li>
<li><a href="Virtual_file_system" title="Virtual file system">Virtual file system</a></li>
<li><a href="Virtual_tape_library" title="Virtual tape library">Virtual tape library</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Supporting concepts</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="API" title="API">API</a></li>
<li><a href="Computer_network" title="Computer network">Computer network</a></li>
<li><a href="Hardware_abstraction" title="Hardware abstraction">HAL</a></li>
<li><a href="Live_CD" title="Live CD">Live CD</a></li>
<li><a href="Live_USB" title="Live USB">Live USB</a></li>
<li><a href="Shell_(computing)" title="Shell (computing)">Shell</a>
<ul><li><a href="Command-line_interface" title="Command-line interface">CLI</a></li>
<li><a href="User_interface" title="User interface">User interface</a></li></ul></li>
<li><a href="Preboot_Execution_Environment" title="Preboot Execution Environment">PXE</a></li></ul>
</div></td></tr></tbody></table></div></div><!--htdig_noindex--><div><div class="zim-footer">
This article is issued from <a class="external text" title="Last edited on 2025-06-27" href="https://en.wikipedia.org/wiki/?title=Text-based_user_interface&amp;oldid=1297694076">Wikipedia</a>. The text is available under <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en">Creative Commons Attribution-Share Alike 4.0</a> unless otherwise noted. Additional terms may apply for the media files.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>

</body></html>